Jun 11, 2010

customise Data On DevExpress GridControl

Ok. Pada pagi yang cerah ini walaupun saya telat berangkat ke kantor (sebenere nek jum'at pasti telat :D, hari tidur sedunia sih..) kita akan coba bahas bagaimana cara meng-customise data yang ditampilkan dalam GridControl dari DevExpress. Kenapa pengaturan atau pemilihan data yang akan ditampilkan menjadi penting ?, tidak lain karena kita ingin melakukan efisiensi dan efektifitas dalam penggunakan StoredProcedure, sehingga 1 SP bisa digunakan dalam banyak Form walaupun nanti akan menampilan data yang berlainan dalam tiap-tiap form.


Tidak usah berpanjang lebar lagi, langsung saja buat Form seperti gambar dibawah, atau anda bisa membuat Form sesuai dengan Selera.
form.jpg

Setelah Form dibuat, ikuti langkah berikut :
1. Dari Form yang sudah dibuat, click "Run Designer" untuk melakukan Customise atau penyesuaian GridControl


2. Akan keluar Window "Property Editor", lakukan beberapa penyesuaian



3. Setelah proses User Interface selesai giliran kita masuk ke bagian logic. Buat code berikut untuk menampilkan data
-----------------------awal code-------------------------
Public Overloads Function GetData(ByVal viewGridData As DevExpress.XtraGrid.GridControl) As Boolean
Try
If OpenDb() Then
GetDbDataAdapter().SelectCommand = New SqlCommand("dbo.ShowPerson", ConnResource())
GetDbDataAdapter().SelectCommand.CommandType = CommandType.StoredProcedure

dbDataSet.Clear()
GetDbDataAdapter().Fill(dbDataSet, "Person")

viewGridData.DataSource = dbDataSet
viewGridData.DataMember = "Person"

'viewGridData.ac()
Return True
Else
_exception = New Exception("Display data error")
Return False
End If

Catch ex As Exception
_exception = New Exception(ex.Message.ToString)
Return False
End Try

End Function

Public Overloads Function GetData(ByVal viewGridData As DevExpress.XtraGrid.GridControl, ByVal Nama As String) As Boolean
Try
If OpenDb() Then
GetDbDataAdapter().SelectCommand = New SqlCommand("dbo.ShowPerson", ConnResource())
GetDbDataAdapter().SelectCommand.CommandType = CommandType.StoredProcedure
GetDbDataAdapter().SelectCommand.Parameters.Add("@Nama", SqlDbType.NChar).Value = Nama

dbDataSet.Clear()
GetDbDataAdapter().Fill(dbDataSet, "Person")

viewGridData.DataSource = dbDataSet
viewGridData.DataMember = "Person"

'viewGridData.ac()
Return True
Else
_exception = New Exception("Display data error")
Return False
End If

Catch ex As Exception
_exception = New Exception(ex.Message.ToString)
Return False
End Try

End Function
-----------------------akhir code------------------------

4. Buatlah StoredProcedure seperti berikut
-----------------------awal code-------------------------
USE [Kepegawaian]
GO
/****** Object: StoredProcedure [dbo].[ShowPerson] Script Date: 06/10/2010 18:55:08 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:
-- Create date: <19 Mei 2010>
-- Description:
-- =============================================
ALTER PROCEDURE [dbo].[ShowPerson]
-- Add the parameters for the stored procedure here
@Nama nchar(255) = NULL
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;
IF NOT @Nama IS NULL
BEGIN
-- Insert statements for procedure here
SELECT IdPerson, RTRIM(Nama) AS Nama, Alamat, RTRIM(TempatLahir) AS TempatLahir, TanggalLahir, RTRIM(Identitas.JenisIdentitas) AS Identitas,
RTRIM(NoIdentitas) AS NoIdentitas, RTRIM(Agama.NamaAgama) AS Agama, RTRIM(NoHP) AS NoHP, Kelamin, Perkawinan
FROM dbo.Person, dbo.Agama, dbo.Identitas
WHERE Agama.IdAgama=Person.Agama AND Identitas.IdIdentitas=Person.Identitas AND
Nama LIKE '%'+RTRIM(@Nama)+'%'
ORDER BY IdPerson

INSERT INTO dbo.test (test) VALUES ('%'+RTRIM(@Nama)+'%')
END
ELSE
BEGIN
SELECT IdPerson, RTRIM(Nama) AS Nama, Alamat, RTRIM(TempatLahir) AS TempatLahir, TanggalLahir, RTRIM(Identitas.JenisIdentitas) AS Identitas,
RTRIM(NoIdentitas) AS NoIdentitas, RTRIM(Agama.NamaAgama) AS Agama, RTRIM(NoHP) AS NoHP, Kelamin, Perkawinan
FROM dbo.Person, dbo.Agama, dbo.Identitas
WHERE Agama.IdAgama=Person.Agama AND Identitas.IdIdentitas=Person.Identitas
ORDER BY IdPerson
END
END
-----------------------akhir code------------------------

Semoga berhasil dan semoga bermanfaat
adin said...

derita lu
makanya jng terlalu congkak jd org......hehe

Powered by Blogger.

Whatsapp Button works on Mobile Device only

Start typing and press Enter to search